package com.uwlaser.service;

import com.uwlaser.domain.RequestParam;
import com.uwlaser.service.dto.*;

import java.util.List;

/**
* @author zk-Qin
* @date 2022-11-03
*/
public interface DeviceService {

    static final String CACHE_KEY = "deviceService";

    /**
     * 设备报警
     * @param requestParam
     */
    void deviceAlarm(RequestParam<DeviceAlarmParam> requestParam);

    /**
     * 设备停机
     * @param requestParam
     */
    void deviceDown(RequestParam<DeviceDownParam> requestParam);

    /**
     * 设备状态
     * @param requestParam
     */
    void deviceStatus(RequestParam<DeviceStatusParam> requestParam);

    /**
     * 设备心跳
     * @param requestParam
     */
    void deviceHeartBeat(RequestParam<DeviceHeartBeatParam> requestParam);

    /**
     * 设备登录
     * @param requestParam
     * @return
     */
    DeviceLoginResult getDeviceLogin(RequestParam<DeviceLoginParam> requestParam);

    /**
     * 定时更新设备在线状态
     */
    void updateoOnline();
}
